/* NoX (NoC Simulator)
 *
 * Dept. of Computer Science & Engineering, Pennsylvania State University.
 * All Rights Reserved.
 *  
 * 1. License     
 * NoX is distributed free of charge for academic, educational, noncommercial 
 * research purposes as long as this notice in its entirety is preserved in
 * every file included in this package.
 * All commercial use of this program requires separate licence. Contact the
 * author for details.
 * 
 * 2. All the publications that used the simulation results generated by the 
 * NoX should notify the author of the publication information and put 
 * following reference.
 *
 *  http://www.cse.psu.edu/~dpark/nox/
 * 
 * 3. Modification of the source code is permitted and encouraged as long as 
 * it follows the terms described in this copyright notice.
 *
 * 4. The author is not responsible for any problems caused by possible errors
 * of the NoX package. Therefore, users should verify the simulation result
 * before using it in their publication.
 *
 * Dept. of Computer Science & Engineering, Pennsylvania State University.
 * Contact: dpark@cse.psu.edu 
 * 
 * 6. If problems are found with the NoX package, please send an email to the
 * author for discussion and correction.

 */

/* Update History
 *
 * Jan. 31, 2006  Version 1.0 released by Dongkook Park 
 *
 */


#ifndef NIC_H
#define NIC_H

#include "router.h"
#include "flit_move.h"

// Here, total NIC buffer size should be multiplied by NUM_VC.
#define NIC_INPUT_BUF_SIZE     128 // the number of flits that a NIC input buf of each VC can store.
#define NIC_OUTPUT_BUF_SIZE    128 // the number of flits that a NIC output buf of each VC can store.

#define NUM_NIC_BASE_VC        2
#define MAX_NIC_VC             64

void nic_output_buf_to_router_input_buf_stage(void);
void nic_input_buf_to_PE_stage(void);
#endif
